package com.slipper.system.api.organization.service;

import com.slipper.common.annotation.FeignRequestMapping;
import com.slipper.common.bo.Result;
import com.slipper.common.feign.ServiceClient;
import com.slipper.system.api.organization.bo.OrganizationBO;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

/**
 * 组织机构信息表
 *
 * @date 2020-03-26 14:59:54
 */
@ServiceClient
public interface IOrganizationSv {
    @FeignRequestMapping("/organization/queryBy")
    Result<OrganizationBO> queryBy(@RequestBody String id);

    @FeignRequestMapping("/organization/queryPage")
    Result<List<OrganizationBO>> queryPage(@RequestBody OrganizationBO bo);

    @FeignRequestMapping("/organization/save")
    Result<?> save(@RequestBody OrganizationBO bo);

    @FeignRequestMapping("/organization/delete")
    Result<?> delete(@RequestBody OrganizationBO bo);

    @FeignRequestMapping("/organization/queryList")
    Result<List<OrganizationBO>> queryList(@RequestBody OrganizationBO bo);

    /**
     * 根据ID，查出此ID可管理的公司
     */
    @FeignRequestMapping("/organization/queryUnitOrg")
    Result<OrganizationBO> queryUnitOrg(@RequestBody String id);

    @FeignRequestMapping("/organization/queryByName")
    Result<OrganizationBO> queryByName(@RequestBody OrganizationBO bo);

    @FeignRequestMapping("/organization/saves")
    Result<?> saves(@RequestBody List<OrganizationBO> list);

    @FeignRequestMapping("/organization/updateValid")
    Result<?> updateValid(@RequestBody OrganizationBO bo);
}
